Key mover

ABSTRACT

The remote control device comprises: A microprocessor including a CPU and a memory; a keypad including a set of keys coupled to the microprocessor; lamp driver circuitry coupled to the microprocessor; circuitry for generating IR signals coupled to the IR lamp driver circuitry; code data for executing command functions for a plurality of devices of different manufacturers stored in the memory; a Key Reassignment table in the memory containing key identity, device ID, mode data and command function data; and a program stored in the memory for reassigning a different function for the same or different device to a key on the keypad upon the inputting of a predetermined keystroke sequence on the keypad.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a Continuation-in-Part of U.S. patent application Ser. No. 07/913,523 filed Jul. 14, 1992, which is abandoned and is a Continuation-in-Part of U.S. patent application Ser. No. 07/586,957 filed Sep. 24, 1990 which is abandoned and is a Continuation of U.S. patent application Ser. No. 127,999 filed Dec. 2, 1987 which issued to U.S. Pat. No. 4,959,810 on Sep. 25, 1990 which is a Continuation-in-Part of U.S. patent application Ser. No. 109,336 filed Oct. 14, 1987 which is abandoned.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a remote control of the type which is hand held and which can be coupled via coded infrared signals with a remote control receiver built into a television or other remotely controlled electrical apparatus to turn on the apparatus, such as the television, at a distance, to adjust the volume, tone and brightness, to change channels, to turn the television off and to perform other functions, and more specifically to a remote control wherein functions can be moved or transferred to different keys or pushbuttons for the convenience of the user.

2. Description of the Related Art Including Information Disclosed Under 37 CFR §§ 1.97-1.99

Heretofore it has been proposed to provide a reconfigurable remote control device and programmable functions for such a remote control device which will enable one to learn, store and retransmit infrared codes that are emitted from the remote control device for a remotely controlled apparatus, such as a television.

For example, in the Welles II U.S. Pat. No. 4,623,887 and the Ehlers U.S. Pat. No. 4,626,848, there is disclosed a reconfigurable remote control device which has the ability to learn, store and repeat remote control codes from any other infrared transmitter. Such a reconfigurable remote control transmitter device includes an infrared receiver, a microprocessor, a non-volatile random access memory (RAM), a scratch pad random access memory, and an infrared transmitter.

According to the teachings of the Ehlers patent, the infrared signals received by the remote control device are in bursts of pulses and the device counts the number of pulses in each burst as well as the time duration of each pause in a transmission between bursts.

The Darbee et al. U.S. Pat. No. 4,959,810, of which this application is a Continuation-in-Part, discloses a universal remote control device having terminals for enabling code data to be supplied from outside the device through the terminals and a CPU to a RAM or ROM in the device.

Hand held remote controls of necessity have a finite number of keys and, because of the diversity of possible target devices, cannot offer a dedicated key for every possible function or feature.

Accordingly, dedicated keys are generally only provided for those functions which are common to almost all devices (e.g. Power, Volume, Channel Up/Down, etc.).

One approach to allowing a customer access to those special functions which are unique to his particular brand of remote control device (e.g. tracking or color adjustment, picture-in-picture, etc.) is to provide, in addition to the "standard" keys, a number of generic keys labeled, for example, A, B, C, D, etc. together with a booklet which lists, by brand and model, what functions are available on those keys as disclosed in the Darbee et al. U.S. Pat. No. 4,959,810.

The disadvantage of this method is that the number of keys is still quite limited, so the manufacturer of the universal remote control device usually has to select by brand and model which special functions are or are not offered.

Another approach is to provide a special key which, when pressed, allows a multi-key entry sequence to access any one of a large library of special functions. For example, pressing an "A" key followed by two digits (A-n-n) would provide access to up to 100 special, or "extended" functions. The disadvantage of this method is that it requires the user of the device to press the standard keys or pushbuttons multiple times in order to access any of these extended functions.

As will be described in greater detail hereinafter, the remote control device of the present invention overcomes the foregoing disadvantages by including, in the operating program for the remote control device, executable programs or routines which permit the individual user to assign any desired function to almost any key on the keypad. The user is thus able to individually customize his particular device so that his most frequently accessed functions are single keystrokes and/or in the most convenient locations on the keypad.

The executable routines or programs also allow the user to reassign keys "across devices". For example, if a user plays his TV sound through a stereo amplifier, he may wish to reassign the "MUTE" key such that, when his remote control device is switched to TV mode, the mute signal sent in response to the button is that of the stereo amplifier, not that of the TV.

SUMMARY OF THE INVENTION

According to the present invention there is provided a remote control device comprising: a microprocessor including a CPU and a memory; a keypad including a set of keys coupled to the microprocessor; lamp driver circuitry coupled to the microprocessor; circuitry for generating IR signals coupled to the IR lamp driver circuitry; code data for executing command functions for a plurality of devices of different manufacturers stored in the memory; a Key Reassignment table in the memory containing key identity function data for those keys which have been reassigned by the user; and a program stored in the memory for reassigning a different function for the same or different device to a key on the keypad upon the inputting of a predetermined keystroke sequence on the keypad.

Further according to the present invention there is provided a method for reassigning a key function to a key on a keypad in a remote control device of the type described above comprising the steps of: entering a predetermined keystroke sequence on the keypad; determining if the predetermined keystroke sequence is a command to perform special function processing to reassign to a key a function of a device to be controlled; determining if a function key has been depressed; storing the key identity and current mode into a "FROM" entry in the Key Reassignment Table; determining if the next key depressed is a mode key; setting the new mode; determining if a function sequence of keystrokes has been entered on the keypad for a valid function for the device and mode selected; obtaining device TYPE and command function data corresponding to the function and mode selected from the Key Reassignment Table; and, storing the data in a "TO" entry in the Key Reassignment Table, thereby establishing a "FROM=TO" relationship between the physical key ("FROM") and the new, reassigned, function which it is to perform ("TO").

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a front perspective view of a remote control device constructed according to the teachings of the present invention.

FIG. 2 is a front plan view of the control device shown in FIG. 1 and shows the various keys or pushbuttons of the device.

FIG. 3 is a block electrical schematic circuit diagram of the remote control device shown in FIGS. 1 and 2.

FIG. 4 is a flow chart of the steps performed by a key reassignment program entitled KEY MOVER: NORMAL FUNCTION.

FIG. 5 is a flow chart of the steps performed in the execution of a program for reassignment of a key function entitled KEY MOVER: KEY REASSIGNMENT.

FIG. 6 is a table showing the a Key Reassignment Table of the KEY MOVER program.

DESCRIPTION OF THE PREFERRED EMBODIMENT(S)

Referring now to FIG. 1 in greater detail, there is illustrated therein a remote control device 10 constructed according to the teachings of the present invention.

As shown, the device 10 includes a housing 11 including an upper housing member 12 having a base panel 14, and a lower housing member 16. An overlay face panel 18 is positioned over the base panel 14 and has a keyboard layout, i.e. keypad, 20 on the outer surface thereof.

The two panels 14 and 18 have openings therethrough for receiving elastomeric pushbuttons 25, for the keypad 20, all of which extend from and are fixed to or integral with an elastomeric body panel.

The pushbuttons 25 are arranged in rows and columns and are identified as follows on the keypad 20:

    ______________________________________                                         VCR     AUX          CABLE                   TV                                ______________________________________                                         A       B            C                           POWER                         1              2             3                    MUTE                         4              5             6                                                 7              8             9                                                                 0                                  VOL                                                       ENTER                                                                          RECALL                                                                                        CH                                                              PAUSE                                                                                          PLAY                             REC          *               TV-VCR                                                                                         STOP                              ______________________________________                                    

This arrangement is shown in FIG. 2, and the manner in which these pushbuttons 25 are utilized in operating the control device 10 will be described in greater detail hereinafter.

At a top or forward end of the device 10 there is provided an opening 30 for two light emitting diodes LED 1 and LED 2. The opening 30 is covered by an infrared-transparent lens 31. Also provided on a top surface 32 of the upper housing member 12 of the control device 10 is a light emitting diode, LED 3, by which information is communicated to the user of the device 10.

FIG. 2 is a plan view of the keyboard or keypad 20 and shows the different keys or pushbuttons 25 of the control device 10 extending through the base panel 14 of upper housing member 12 and the face panel 18 where the label or identification for each pushbutton or key 25 is shown. The light emitting diode LED 3 is also indicated.

FIG. 3 is a block electrical schematic circuit diagram of the operating circuitry 36 in the remote control device 10 which includes a microprocessor 38, including a RAM 40, a ROM 42 and a CPU 44. The keypad 20 is coupled to the microprocessor 38 by an interrupt line 46 and a bus 48 to the CPU 44.

A power supply in the form of a battery 50 is connected between a + voltage input 51 to the microprocessor 38 and a system ground 52. A backup battery 56 is connected through a diode 58 to the + voltage input 51 to maintain the data stored in the memory 42 and/or 44 to provide a non-volatile system.

A reset circuit 60 is coupled to the microprocessor 38, as shown.

An output of the CPU 44 is connected to an IR lamp driver circuit 62 which outputs a voltage to the two light emitting diodes LED 1 and LED 2.

The status indicating LED 3 is connected to an input of the microprocessor 38.

The electrical circuitry 36 is generally of the type disclosed in greater detail in the Darbee et al. U.S. Pat. No. 4,959,810, the disclosure of which is incorporated herein by reference.

The operating program for the remote control device 10 which is stored in the ROM 42 or RAM 40 is very similar to the operating programs disclosed in the Darbee et al. U.S. Pat. No. 4,959,810, incorporated herein by reference, with the exception of the KEY MOVER routine or program described below, for moving or assigning a selected function to a selected key.

With reference to FIG. 4, in the normal operation of the KEY MOVER program, whenever a key is struck, the program determines whether or not it was the mode key and if it was then the mode of operation is changed.

If it was not, the program then determines whether it was the "A" key. If it was, a "Shift" status is set, enabling the program to "remember" during subsequent key presses that the "A" key had been struck.

If the answer is "No", the program then determines if the "B" key has been struck and the "Shift" status is in effect, and if the answer is "Yes", the program enters the special function processing mode for reassigning a key which is described in greater detail below and in connection with the description of FIG. 5.

This special function processing in the reassign mode of operation of the remote control device 10 allows the operator to reassign FUNCTION keys by typing on the keypad 20:

A-B-C-9-9-9 <From Func> <To Func>.

Thus, one can customize his/her keyboard or keypad 20.

If the user wants keys from a different mode (device) to replace existing keys, that can be done by typing on the keypad 20:

[From Mode] A-B-C-9-9-9 <From Func> [To Mode] <To Func>.

For example, if one wants Volume Up (VL+) from a CD to replace Volume Up for a TV, the user will type on the keypad 20:

TV A-B-C-9-9-9 VL+ CD VL+

Now, whenever the user is in the TV mode, pressing Volume Up will raise the volume on the CD player, not the TV. One can also make it so that the TV volume operates normally, but pressing keys:

A VL+

will operate the CD volume.

This is accomplished by typing on the keypad 20:

TV A-B-C-9-9-9 A VL+ CD VL+

A very desirable feature of the KEY MOVER program is that it allows one ready access to "extended" functions that would otherwise require several keystrokes. For example, if the remote control device 10 is of the type disclosed in U.S. patent application Ser. No. 07/913,523 entitled: REMOTE CONTROL DEVICE WITH FUNCTION SYNTHESIS and where, to effect Color Up, one has to type on the keypad 20:

A-6-3-8,

one can move that function to the Channel Up key by typing:

TV A-B-C-9-9-9 A CH+ A-6-3-8.

Now, pressing CH+ will change channels on the TV normally, but pressing A CH+ will send Color Up.

One can assign alternate functions to any key except the mode (device) keys or the "A" key.

Returning to the program, if the pressing of the "B" key and setting of the "Shift" status have not occurred, the program then determines whether a DIGIT (number) key has been depressed and whether the "Shift" status is in effect.

If the answer is "Yes", extended function processing is performed such as synthesizing of an alternate or extended function in the manner described in U.S. patent application Ser. No. 07/913,523 entitled: REMOTE CONTROL DEVICE WITH FUNCTION SYNTHESIS, the disclosure of which is incorporated herein by reference.

If the answer was "No" to the question of whether a DIGIT (number) key has been struck and "Shift" status is in effect, the program scans the "FROM" entries in a Key Reassignment Table for a match on key number, "Shift" status and mode. Then, a determination is made to see if a match has been found. If a match is found, then the device data format and command=data from the corresponding "TO" entry in the Key Reassignment Table is sent to the IR lamp driver circuit 62 and the IR code is transmitted based on that device data format and command data settings.

If no match was found, then the current mode's standard data for that key number and device data format is sent to the IR lamp driver circuit 62 to cause the IR code to be transmitted on the standard device ID and command data setting.

After the IR code is transmitted, as well as after the performance of the special function and the extended function (synthesis), the "Shift" status is cleared.

Stated in a simplified way, whenever a key is struck, the KEY MOVER routine or program illustrated in FIG. 4, after checking for the striking of special keys or functions, begins by scanning a special table, the Key Reassignment Table, in memory. This table is for all keys which have been reassigned. If a match is found, the program extracts from the second part of the table entry the device data format and command information to be sent in lieu of the standard assigned function for that key and mode.

If no match is found, the standard device data format and command data are used.

The special KEY MOVER function program, protocol or subroutine is illustrated in FIG. 5 and starts with the detection of a key sequence, such as A-B-C-9-9-9.

Then, it is determined whether the next key pressed was "A".

If "Yes", then the "Shift" bit is set in the Key Reassignment Table and the program waits for the depression of another key.

Next, the program determines if a function key has been depressed. If "No", the program goes to exit.

If "Yes", the key number and current mode are stored into a "FROM" entry in the Key Reassignment Table (FIG. 6) and the program waits for the next key.

Next, a determination is made whether a mode key has been depressed. If "Yes", the new mode is set and the program waits for the next key stroke.

After that, or if the answer was "No", a determination is made if one or more keys have been depressed for a valid function sequence. If "No", the program exits.

If "Yes", the program obtains a device data format and command data corresponding to the function and mode selected and stores this data into a "TO" entry in the Key Reassignment Table which is illustrated in FIG. 6.

Whenever a special key sequence "A-B-C-9-9-9" is used, the operating program for the remote control device switches to the special function processing, KEY MOVER, program illustrated in FIG. 5, i.e. the "KEY MOVER" program as explained above and as indicated in the special function processing step of FIG. 4 and as further described in connection with the description of the flow chart in FIG. 5.

If a complete definition of the device data format requires more space than is provided for in the Key Reassignment Table shown in FIG. 6, the initial table entry under "DEVICE TYPE" simply may be a pointer to a secondary table, DEVICE DATA TABLE, containing additional information, as shown in FIG. 6.

From the foregoing description, it will be apparent that the KEY MOVER program of the present invention provides a number of advantages some of which have been described above and others of which are inherent in the invention. In particular, a dedicated or universal remote control device having the KEY MOVER program therein enables the user of the device to customize his particular device so that his most frequently accessed functions are single key strokes and/or in the most convenient location on the keypad 20. Also, the method of the present of the present invention, the KEY MOVER program, and operating keys (A-B-C-9-9-9) can be modified without departing from the teachings of the present invention. Accordingly, the scope of the invention is only to be limited as necessitated by the accompanying claims. 

We claim:
 1. A remote control device comprising:a microprocessor including a CPU and memory means; a keypad including a set of keys including device keys, mode keys and alpha numeric keys coupled to said microprocessor; lamp driver circuitry coupled to said microprocessor; means for generating IR signals coupled to said IR lamp driver circuitry; instructions and data in binary form stored in said memory means for enabling command functions for controlling a plurality of devices manufactured by different manufacturers to be retrieved and supplied to said means for generating IR signals; a Key Reassignment table in said memory means containing key identity mode data, device data format, and function data; and program instructions in binary form stored in said memory means for enabling one to assign a different command function to a key on the keypad upon the inputting of a predetermined keystroke sequence on said keypad, wherein said predetermined keystrokes are a combination of letter keystrokes and number keystrokes.
 2. The remote control device of claim 1 wherein the predetermined keystrokes are three letter keystrokes followed by three number keystrokes.
 3. The remote control device of claim 2 wherein the keystrokes for the letter keystrokes are A-B-C and the keystrokes for the number keystrokes are 9-9-9.
 4. A method for reassigning a function to a key on a keypad in a remote control device including:a microprocessor comprising a CPU and memory means; a keypad including a set of keys coupled to the CPU; lamp driver circuitry coupled to the microprocessor; means for generating IR signals coupled to the IR lamp driver circuitry; instructions and data in binary form stored in said memory means for enabling command functions for controlling a plurality of devices manufactured by different manufacturers to be retrieved and supplied to said means for generating IR signals; and, a Key Reassignment Table in said memory means containing key identity and mode, device data format, and command function data, said method comprising the steps of:entering a predetermined keystroke sequence on the keypad; sensing with the microprocessor the keys struck to determine with the microprocessor if the predetermined keystroke sequence is a command to perform special function processing to reassign to a key a function of a device to be controlled, a new mode; determining with the microprocessor if a function key has been depressed; storing the key identity and current mode into a "FROM" entry in the Key Reassignment Table; determining with the microprocessor if the next key depressed is a mode key; setting, with the microprocessor and program instructions for enabling one to assign a different command function to a key, the new mode; determining with the microprocessor if a function sequence of keystrokes has been entered on the keypad for a valid function for the device and mode selected; obtaining with the program instructions device data format and command function data corresponding to the function and mode selected from the Key Reassignment Table; and, storing the data obtained in a "TO" entry in the Key Reassignment Table.
 5. The method of claim 4 wherein said keystrokes for initiating the special function of reassignment include alpha numeric keystrokes.
 6. The method of claim 5 wherein the alpha numeric keystrokes are A-B-C and 9-9-9.
 7. A remote control device comprising:a microprocessor including a CPU and memory means; a keypad including a set of keys coupled to said microprocessor; lamp driver circuitry coupled to said microprocessor; means for generating IR signals coupled to said IR lamp driver circuitry; instructions and data in binary form stored in said memory means for enabling command functions for controlling a plurality of devices manufactured by different manufacturers to be retrieved and supplied to said means for generating IR signals; a Key Reassignment Table in said memory means containing key identity and mode, device data format, and command function data; program instructions in binary form stored in said memory means for enabling one to assign a different command function to a key on the keypad upon the inputting of a predetermined keystroke sequence on said keypad; said microprocessor and program instructions including:means for sensing when a predetermined keystroke sequence has been entered on the keypad; means for determining if the predetermined key stroke sequence is a command to perform special function processing to reassign to a key a function for a device; means for determining if a function key has been depressed; means for storing the key identity and current mode into a "FROM" entry in the Key Reassignment Table; means for determining if the next key depressed is a mode key; means for setting the new mode; means for determining if a function sequence of keystrokes has been entered on the keypad for a valid function for the device and mode selected; means for obtaining device data format and command function data corresponding to the function and mode selected; and means for storing the data in a "TO" entry in the Key Reassignment Table.
 8. A remote control device for controlling first and second devices responsive to IR signals, the remote control device comprising:means for generating IR signals; a keypad havingfirst and second device keys operatively connected to select a first device mode and a second device mode, respectively, and a plurality of predetermined function keys operatively connected to the means for generating IR signals such that operation of the predetermined function keys performs respective functions on the first device when the first device mode is selected and such that operation of the predetermined function keys performs respective functions on the second device when the second device mode is selected; and means for reassigning the predetermined function keys across the device modes such that operation of at least one of the predetermined function keys performs the respective function on the second device when the first device mode is selected.
 9. The remote control device of claim 8, wherein:the first device mode is selected from the group consisting of TV, VCR, AUX, STEREO and CABLE; the second device mode is selected from the group consisting of TV, VCR, AUX, STEREO and CABLE; and the plurality of predetermined function keys includes a volume key and a mute key.
 10. The remote control device of claim 9, wherein the plurality of predetermined function keys further includes a power key and a channel key.
 11. The remote control device of claim 9, wherein the first device mode is the TV mode, the second device mode is the stereo mode, and the predetermined function keys reassigned to the TV from the stereo include the volume key such that operation of the volume key while in TV device mode affects the stereo.
 12. The remote control device of claim 9, wherein the first device mode is the cable mode, the second device mode is the TV mode, and the predetermined function keys reassigned to the TV from the cable includes the volume key such that operation of the volume key while in cable device mode affects the TV.
 13. The remote control device of claim 9, wherein the plurality of predetermined function keys further includes a play key and a stop key.
 14. The remote control device of claim 13, wherein the first device mode is the TV mode, the second device mode is the VCR mode, and the predetermined function keys reassigned to the TV mode from the VCR mode include the play key and the stop key.
 15. A remote control device for controlling first and second devices responsive to IR signals, wherein each device is adapted to perform a corresponding set of available functions and is not adapted to perform a corresponding set of unavailable functions, and wherein the remote control device comprises:means for generating IR signals; a keypad havingfirst and second device keys operatively connected to select a first device mode and a second device mode, respectively, and a plurality of predetermined function keys operatively connected to the means for generating IR signals such that operation of predetermined function keys performs respective functions on the first device when the first device mode is selected and the first device corresponding set of available functions includes the respective function and such that operation of another of the predetermined function keys performs respective functions on the second device when the second device mode is selected and the second device corresponding set of available functions includes the respective function, wherein the plurality of predetermined function keys includes a first key corresponding to a first respective function included in the second device corresponding set of unavailable functions and a second key corresponding to a second respective function included in the first and second device corresponding sets of available functions; means for assigning an available function selected from the second device corresponding set of available functions to the first key such operation of the first key when the second device mode is selected will perform the available function on the second device; and means for assigning the second respective function across devices such that operation of the second key when the second device mode is selected performs the second respective function on the first device. 